Решение задачи построения математической модели динамических систем по данным наблюдений  за их поведением составляет предмет {\bf теории идентификации}.

% !!! Вот это предисловие надо уменьшить и сделать более понятной основную мысль

Понятие ''система`` - философское. С древности люди наблюдали за происходящими явлениями и пытались их описать. Первых значительных успехов достиг И.Ньютон. Сейчас большинство исследуемых систем приближаются линейными стационарными системами, так как анализ более сложных систем возможен далеко не всегда. Говоря нестрого, система - это объект, в котором происходит взаимодействие между разнотипными переменными и формируются наблюдаемые сигналы.

Наблюдения называются выходными сигналами, а все остальные сигналы суть возмущения. Они разбиты на 2 класса: измеряемые непосредственно (их называем входами), и доступные лишь косвенной оценке через их воздействие на выходной сигнал.

Заде дал такое определение идентификации: ''Идентификация --- это определение по входу и выходу системы из определенного класса систем, которой испытуемая система эквивалентна.`` Таким образом для постановки задачи идентификации, нужно задать класс рассматриваемых систем  ${\cal S} = \{S\}$, определить возможные входные воздействия и ввести понятие эквивалентности.

Обычная схема управляемой системы такова. Имеется объект, состояние которого в каждый момент времени $t$ описывается фазовой переменной $x$. Объект подвержен управляющему воздействию $u$. Оно вырабатывается в органе управления $U$. На объект также действует помеха $w$, поддающаяся измерению, и помеха от внешней среды $v$, не поддающаяся измерению. Математический характер переменных определяется природой системы. Мы будем рассматривать случай, когда характер помех $u$ и $y$ не зависят от времени.

%-------------------------------------------------------
\begin{picture}(160,55)
\put(25,12){\vector(1,0){30}}
\put(38,13){u}
\put(25,28){\vector(1,0){30}}
\put(38,29){w}
\put(54.5,5){\line(1,0){51.5}}
\put(55,35){\line(1,0){51}}
\put(55,5){\line(0,1){30}}
\put(106,5){\line(0,1){30}}
\put(80,50){\vector(0,-1){15}}
\put(83,40){v}
\put(106,20){\vector(1,0){30}}
\put(115,23){y}
\end{picture}
\begin{picture}(150,52)
\put(20,40){u  - входной сигнал;}
\put(20,28){y  - выходной сигнал;}
\put(20,16){w  - измеримая помеха;}
\put(20,4){v  - неизмеримая помеха;}
\end{picture}\\
%--------------------------------------------------------
В качестве $u$ может выступать белый шум или синусоидальное воздействие, неизмеримой помехой $v$ может быть, например, ветер.

Таким образом, систему можно описать:
$$
\begin{array}{c}
y(t) = f(u,w,v)\\
u\in X^n, \; w\in X^m, \; v\in X^r, \; y\in X^q \;\\
X^n\times X^m\times X^p \longrightarrow X^q
\end{array}
$$

Рассмотрим в качестве примера дом с солнечным подогревом:

\cfinput{picHouseWithHeat}

\begin{picture}(200 ,100)
\put (20,70){Здесь $w$ - солнечное излучение, $v$ - облачность, ветер, }
\put (20,57){$u$ - работа вентилятора и $y$ - температура в месте,}
\put (20,44){где стоит датчик.}
\end{picture}

\section{Используемые модели}
\subsection{Способы задания моделей}
Систему можно описать различными способами: графически, таблично, аналитически. 

\begin{enumerate}
	\item физический:
	\begin{enumerate}
		\item макет;
		\item тренажер;
		\item опытный образец;
	\end{enumerate}
	
	\item абстрактный:
	\begin{enumerate}
		\item графический (схематичный, табличный, график зависимости выходов от входов);
		\item аналитический (дифференциальное, разностное уравнения);
		\item иммитационный (компьютерные алгоритмы, программы).
	\end{enumerate}
\end{enumerate}

В нашем курсе мы будем использовать {\bf аналитические способы} задания моделей.

\subsection{Виды аналитических моделей}
Аналитически заданные модели можно классифицировать разными способами:
\begin{enumerate}
	\item по отношению ко времени (статические и динамические: непрерывные и дискретные);
	\item учет случайности (детерминированные и стохастические);
	\item вид зависимости (линейные и нелинейные);
	\item по пространственным характеристикам (распределенные (уравнения в частных производных),
	сосредоточенные (например, ''размазанное`` в непрерывном пространстве сопротивление ''фокусируется`` в одной точке)
\end{enumerate}

\subsection{Два способа построения моделей}
Модели строятся на основе измерений (задача статистики). Способы построения моделей:
\begin{enumerate}
 \item Моделирование (модель серого ящика): расщепить модель на блоки, свойства
 	   которых очевидны из ранее накопленного опыта. Например, для решения задачи
       о тележке, начинающей движение от удара маятника, отдельно описывают
       движение маятника и движение тележки.) Такой способ применяется в том случае, когда имеется
       какая-то информация о физических законах, согласно которым функционирует система или ее части. \\
 \item Идентификация (модель черного ящика): нет информации о физических законах,
 	   согласно которым функционирует система или ее части, необходимо подобрать
       модель в результате обработки входных и выходных сигналов.
\end{enumerate}

\subsection{Какие модели используем} 
В данном курсе мы будем решать задачу идентификации (и управления на основе идентификации) для {\bf линейных} систем (для нелинейных систем мы лишь опишем несколько возможных подходов). Наши системы будут {\bf сосредоточенные} (используем алгебраические и обыкновенные дифференциальные уравнения) и {\bf стохастические} (помеха будет случайной, а не принадлежащей ограниченному множеству). 

Мы рассмотрим следующие виды систем
\begin{enumerate}
\item Статические стохастические системы (Часть I: Различные подходы в зависимости от доступной информации)
\item Динамические дискретные системы [+ детерминированный аналог] (Часть II: Фильтр Калмана)
\item Динамические непрерывные системы (Часть III: Фильтр Калмана-Бьюси)
\item Теорию анализа временных рядов (Часть IV: Линейные модели АРПСС (ARIMA) для дискретных временных рядов)
\end{enumerate}

\section{Процесс идентификации}
\subsection{Схема процесса}  
Следующая схема отражает процесс идентификации:\\

\cfinput{picIdentificationProcess}

\subsection{Необходимая информация}  
Итак для идентификации модели необходимы:
\begin{itemize}
\item Априорные данные - информация, известная еще до постановки задачи.

\item На этапе планирования эксперимента определяется, какие входные данные нужно подавать на вход для целенаправленной идентификации. Определяются перечень и моменты измерений для получения наиболее информативных данных. На практике очень часто пользователь лишен возможности планирования и должен довольствоваться текущими данными.

\item Под текущими данными подразумеваются входные и выходные значения на основе которых проводиться идентификация.

\item Выбор класса моделей это фиксация той группы моделей в рамках которой мы будем искать самую подходящую. Основная сложность идентификации состоит в правильном выборе модели: это сплав априорного знания, интуиции и инженерного искусства. Важную роль при выборе играет имеющийся опыт. Можно на основе тщательного моделирования, учитывая физические законы и другие априорные знания, построить некую модель, содержащую неопределенные параметры (''серый ящик``).

Другой способ --- ограничиться линейными моделями, или другими простыми моделями (''черный ящик``).

\item Определение на множестве моделей наилучшей --- это и есть собственно задача идентификации. Лучшая модель определяется на основе анализа: качественного (насколько хорошо приближает в среднем, устойчива ли...), когда имеем дело со стохастической неопределенностью, или количественного (как ведут себя выходные переменные) в случае детерминированной неопределенности.

Для выделения из множества моделей-кандидатов наилучшей модели мы чаще всего будем использовать минимально-квадратичный критерий качества оценки моделей.

\item На этапе подтверждения модели определяется, соответствует ли модель априорным данным, наблюдениям и прикладной цели. Оценка качества связана с изучением поведения модели в процессе ее использования для воспроизведения данных измерений. Если модель по каким-то причинам не подходит, то принимается решение или перепроверить (подать на вход очередную порцию данных), или подкорректировать один из блоков, или вообще сменить модель.
\end{itemize}

Следовательно, для того, чтобы начать идентификацию нужно собрать данные, выбрать множество моделей и задать критерий качества. Для каждого класса моделей существуют методы их анализа.

\subsection{Причины несовершенства моделей}  
Построенная модель может оказаться неудачной по большому числу причин. Вот некоторые из них:
\begin{itemize}
\item численный метод не позволяет выбрать наилучшую по заданному критерию модель из заданного класса моделей;
\item критерий качества выбран неудачно;
\item выбранный класс моделей не содержит ''достаточно хорошей модели``;
\item множество данных недостаточно информативно (репрезентативно).
\end{itemize}

Поэтому необходимо итеративное решение указанных вопросов и для преодоления возникающих сложностей
следует создавать диалоговое программное обеспечение.

\subsection{Пример}
В линейных причинно-обуcловленных системах выходной сигнал может быть представлен следующим образом:
\begin{equation}
y(t)= \int\limits_{0}^{t}h(t-\tau)u(\tau)d\tau, \;\;\; 0\leq t\leq T, \label{l1_1}
\end{equation}
где $h(t-\tau)$ --- весовая функция (также именуемая функцей импульсной реакции или передаточной функцией).
\linebreak

{\it Задача:} по имеющимся данным идентифицировать функцию $h(t)$.\\
Зададим равномерную сетку. Используя формулу прямоугольников, получим:
$$
y(n\Delta) = \Delta\sum\limits_{i=0}^{n-1}h\left(\frac{2n-1}{2}\Delta-i\Delta \right)
                    u(i\Delta)
$$
Представим $y(T)$ и $h(T)$ в виде:
$$
y^{'}(T)=[y(\Delta),\,y(2\Delta),\ldots,\,y(N\Delta)]
$$
--- выборочные дискретные наблюдения,
$$
h^{'}(T)=\left[h\left(\frac{\Delta}{2}\right),\,h\left(\frac{3\Delta}{2}\right),
         \ldots,\,h\left(\frac{2N-1}{2}\Delta\right)\right]
$$
сеточное задание весовой функции.
Тогда, исходную систему \eqref{l1_1} можно переписать в виде:
\begin{equation}
y(T)=\Delta U h(T), \label{l1_2}
\end{equation}
где
$$
U=\left(\begin{array}{cccc}
u(0)&0&\ldots&0\\
u(\Delta)&u(0)&\ldots&0\\
\vdots&\vdots&\ddots&\vdots\\
u((N-1)\Delta) &\ldots&\ldots&u(0)
\end{array}\right)
$$
нижнетреугольная матрица. Для разрешимости уравнения необходимо, чтобы определитель матрицы $U$ не обращался в нуль:
$\det(U)\neq 0$. Таким образом, получили необходимое требование к системе: $u(0)\neq0$.\\
Для получения $h$, обратим \eqref{l1_2} и получим следующую рекуррентную формулу для вычисления весовой функции:
$$
\begin{array}{lrl}
h_n&=&\frac{1}{u(0)}\left[\frac{y(n\Delta)}{\Delta}-\sum\limits_{i}^{n-1}h_{i-1}u(i\Delta)\right], \quad n\ge2\\
h_1&=&\frac{y(\Delta)}{\Delta u(0)}.
\end{array}
$$
Если $u(i \Delta)=1$ (единичный скачок), то рекуррентные формулы можно упростить. Действительно, в этом случае
$$
\begin{array}{lrl}
h_n&=&\frac{y(n\Delta)}{\Delta}-\sum\limits_{i}^{n-1}h_{i-1}, \quad n\ge2\\
h_1&=&\frac{y(\Delta)}{\Delta}.
\end{array}
$$
Введем обозначение
$$
H_n=\sum\limits_{i=1}^{n-1}h_{i-1}u(i\Delta),
$$
тогда получим следующую процедуру пересчета:
%\framebox{
$$
\begin{array}{lrl}
h_n&=&\frac{y(n\Delta)}{\Delta}-H_n,\\
H_n&=&H_{n-1}+h_{n-1}.
\end{array}
$$
\par
В рассмотренном примере предполагалось, что $u$ и $y$ измеряются точно. На практике же всегда есть некоторая помеха
$v$.

\subsection{Виды помех}
Рассмотрим виды помех:
\begin{enumerate}
 \item Дискретный случай: 
 	
  $v=(v_{1},v_{2},\ldots,v_{N})$, случайный вектор (стохастический случай):
  \begin{enumerate}
	   \item с известным распределением и параметрами распределения (например, $N(0,1)$);
	   \item с известным распределением, но неизвестной частью параметров распределения 
	   (например, $N(0,\sigma^2)$);
	   \item  с неизвестным распределением, но известными некоторыми характеристиками распределением
	   (например, математическим ожиданием и дисперсией);
	   \item полностью неизвестный.
   \end{enumerate}
   
  $v=(v_{1},v_{2},\ldots,v_{N})$, неслучайный вектор (детерминированный случай):
  \begin{enumerate}
	   \item $v_k\in V$, $V$ --- некоторое множество (задача гарантированного оценивания);
   	   \item $v_k$ может принимать, например, только целочисленные значения (целочисленная логика)
  \end{enumerate}
  
 \item Непрерывный случай: $v(t), \;\; 0\leq t\leq T$ \\
 
  Предположим, что $v$ --- случайный процесс. Тогда классификация аналогична дискретному случаю.
  Если $v $ --- функция, то можно предположить, что
  \begin{enumerate}
   		\item она ограниченная, т.е. $\forall t \quad v(t) \in A \subset I\!\!R^n$;
   		\item некоторый функционал от функции $v(t)$ ограничен, например,
		   $$
		   \int_0^T v(t) dt \le 1
		   $$
		 ---   интегральное ограничение;
	   \item функция имеет известный параметризованный вид, например, $v(t)=a_0+a_1t+a_2t^2$, где $a_0,a_1,a_2$ не определены.
    \end{enumerate}
    
\end{enumerate}

% !!! СОВЕРШЕННО НЕПОНЯТНО
\subsection{Первый подход}
Для идентификации применяют следующие подходы:
\begin{itemize}
\item В рамках стохастической модели:
\begin{enumerate}
  \item Байесовский:  для стохастических помех в случае, когда вероятностная структура
  полностью известна и априорные оценки заданы.
  \item ''В широком смысле``: заданы математическое ожидание и ковариационная матрица. (В случае нормального распределения первый и второй подходы совпадают.)
  \item Фишеровский: о некоторых параметрах в рамках байсовского или ''в широком смысле``
   подходов информация отсутствует;
    \item Комбинированный: имеется некоторая информация нестохастического характера
     о некоторых параметрах в рамках байсовского или ''в широком смысле`` подходов: например, известно,
      что вектор математических ожиданий принадлежит некоторому множеству.
     \item unknown but bounded
\end{enumerate}
\item В рамках детерминированной модели:
\begin{enumerate}
  \item $H_{\infty}$ --- абсолютно неопределенные характеристики, ищется
  зависимость выходов от входов, т.е. весовая функция;
   \item unknown but bounded --- известны некоторые ограничения на неизвестные характеристики.
  \end{enumerate}
\end{itemize}

\subsection{Подход на основе понятия состояния}
Другой подход к идентификации основан на введении понятия {\bf состояния}:

\cfinput{picMethodWithState}

$$
\left\{\begin{array}{ccc}
x'&=&Ax(t)+Bu(t)+v_1(t),\\
y'&=&Gx(t)+v_2(t).
\end{array}\right.
$$

Состояние суммирует эффекты от всех предыдущих входов системы. Будущее состояние системы абсолютно предсказуемо (в предположении, что модель совершенна), если известно текущее состояние и будущие входы. В случае стохастической модели под состоянием понимается знание характеристик распределения случайных векторов. 

В рамках этого подхода, задача идентификации системы может быть заменена задачей оценивания, в следующем смысле. Пусть имеется известная априори структура модели с некоторыми неизвестными параметрами,
объединим их в вектор ''$b(t)$``, и задача состоит в том, чтобы эти параметры идентифицировать. Будем рассматривать вектор  $b(t)$ как вектор  состояния системы и поставим задачу его оценить, т.е.  построить оптимальную в смысле некоторого критерия оценку $\beta(t)$.

Задача адаптивного оценивания сочетает в себе задачи оценивания и идентификации. Здесь требуется оценить состояние исходной  системы в случае, когда ее параметры известны неточно. Тогда под состоянием можно понимать вектор  ${x\choose b}$.   На каждом шаге мы не только оценивам вектор состояния исходной системы, но и уточняем модель
$$
y(t) = f(u(t),\beta(t))
$$

\subsection{Задачи для модели адаптивного оценивания}
При рассмотрении системы в пространстве состояний задача идентификации обычно не является конечной целью исследования. Выбранная в ходе идентификации  модель далее используется для решения одной из следующих задач: 
\begin{enumerate}
 \item Задача фильтрации: оценить конечное состояние $X(T)$ процесса по наблюдениям $y(t), \;\; 0\leq t\leq T$.
 \item Задача прогнозирования: оценить будущее состояние $X(T+\tau),\; \tau>0$ процесса по значениям $y(t)$
        на отрезке $0\leq t\leq T$.
 \item Задача сглаживания: оценить состояние в точке $X(\tau), \;\; 0\leq \tau\leq T$ по значениям $y(t)$
        на отрезке $0\leq t\leq T$.
 \item Задача оптимального управления: найти допустимую стратегию управления, минимизирующую некоторый критерий.
\end{enumerate}
Ниже эти задачи будут рассмотрены подробно.